package cn.iocoder.yudao.module.aiposter.dal.dataobject.material;

import com.baomidou.mybatisplus.annotation.EnumValue;
import com.fasterxml.jackson.annotation.JsonCreator;
import com.fasterxml.jackson.annotation.JsonValue;

import java.util.Objects;

public enum MaterialTypeEnum {
    // 背景图上传
    BACKGROUND_IMG(1),
    // 前端抠图上传
    IMG_SEGMENTATION(2),
    // 我的资源上传
    RESOURCE_UPLOAD(3),
    // IMG组件图片替换
    IMG_WIDGET(4),
    // 二维码组件图片替换
    QR_IMG(5),
    // 粘帖工具图片上传
    PASTE_RESOURCE(6),
    // 蒙版信息
    MASK_RESOURCE(7);

    @EnumValue
    private final Integer key;

    MaterialTypeEnum(Integer key) {
        this.key = key;
    }

    @JsonValue
    public Integer getKey() {
        return this.key;
    }

    @JsonCreator
    public static MaterialTypeEnum fromValue(Integer key) {
        for (MaterialTypeEnum anEnum : MaterialTypeEnum.values()) {
            if (Objects.equals(anEnum.getKey(), key)) {
                return anEnum;
            }
        }
        return null;
    }
}
